/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package rothag.views.gamestep;

import java.awt.Graphics;
import java.util.ArrayList;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import rothag.models.developpement.Developpement;
import rothag.controller.MainController;
import rothag.graphics.*;
import rothag.views.JPanelBase;
import rothag.listener.JoueurCourantListener;

/**
 *
 * @author Gaetan, Gulian
 */
public class GameStepJPanelBase extends JPanelBase implements JoueurCourantListener {

    private ImageIcon image;

    public GameStepJPanelBase(MainController controller) {
        super(controller);

        // Récupération de l'image
        image = GraphicsHelper.getImageIcon(GraphicsParameters.pathCadreDroit, this);
        if (image.getIconHeight() == -1) {
            GraphicsHelper.afficherErreur("Erreur", "Erreur lors de l'ouverture du fichier image : " + GraphicsParameters.pathCadreDroit, this).setVisible(true);
            System.exit(1);
        }
        setOpaque(false);

        // Définition de la taille
        hauteur = image.getIconHeight();
        largeur = image.getIconWidth();

        // Enregistrement comme écouteur du joueur courant
        controller.addJoueurCourantListener(this);
    }

    @Override
    public void paint(Graphics g) {
        if (image != null) {
            JLabel label = new JLabel(image);
            label.setBounds(0, 0, image.getIconWidth(), image.getIconHeight());
            add(label);
        }

        super.paint(g);
    }

    public void scoreChanged(int score) {
    }

    public void pieceChanged(int nbPiece) {
    }

    public void nourritureChanged(int nbNourriture) {
    }

    public void ouvrierChanged(int nbOuvrier) {
    }

    public void boisChanged(int nbBois) {
    }

    public void pierreChanged(int nbPierre) {
    }

    public void poterieChanged(int nbPoterie) {
    }

    public void tissuChanged(int nbTissu) {
    }

    public void ferDeLanceChanged(int nbFerDeLance) {
    }

    public void listeDeveloppementChanged(ArrayList<Developpement> listeDeveloppement) {
    }

    public void bateauChanged(int nbBateau) {
    }
}
